Data streams typically comprise files which are split into fragments called packets. In the example of internet based system, these packets are sent from one computer to another using transmission control protocol (TCP) sessions.
Data compression is a common method that is used to improve the performance of data transmission systems by decreasing the amount of data that needs to be transferred by reducing the redundancy within that data. Data encryption is also used within internet based, or other communications to secure data prior to transmission.
It is known to provide content scanning systems that search within packets of character data to identify one or more predetermined strings. A typical such system would be an email filtering system in which the string or strings being searched for are members of a predefined selection of banned words, such as swear words.
A problem with such systems is that their scanning capabilities are defeated when the data being scanned is encoded in some way, such as by compression or encryption. The act of compression, or encryption converts a sequence of characters into a different sequence of characters whose format is defined by the compression, or encryption algorithm used.